cmake_minimum_required(VERSION 3.27)
project(Embedded_UI_simulator)

set(CMAKE_CXX_STANDARD 17)

include_directories("./SDL2-2.26.0-allinone/x86_64-w64-mingw32/include")
link_directories("./SDL2-2.26.0-allinone/x86_64-w64-mingw32/lib")

add_executable(Embedded_UI_simulator main.cpp
        Driver/sdl2_line.cpp
        Driver/sdl2_interface.h
        Driver/sdl2_hvline.cpp
        Driver/sdl2_box.cpp
        Driver/sdl2_buffer.cpp
        Driver/sdl2_interface.cpp
        Driver/sdl2_font_buffer.cpp
        Driver/sdl2_font_buffer.h
        Driver/sdl2_font.cpp
        Driver/sdl2_circle.cpp
        Driver/driver_interface.h
        Platfrom/Utils/NANO/mvvm.cpp
        Platfrom/Utils/NANO/Utils/page.cpp
        Platfrom/Utils/NANO/Utils/page.h
        Platfrom/Utils/NANO/Utils/animation_sysfun.cpp
        Platfrom/Utils/NANO/Utils/animation_sysfun.h
        Platfrom/Utils/NANO/mvvm.h
        Platfrom/Utils/NANO/ViewModel/page_model.cpp
        Platfrom/Utils/NANO/ViewModel/page_model.h
        Platfrom/Utils/NANO/ViewModel/list_view.cpp
        Platfrom/Utils/NANO/ViewModel/list_view.h
        Platfrom/Utils/NANO/mvvm_interface.h
        Platfrom/Utils/NANO/ViewModel/list_model.cpp
        Platfrom/Utils/NANO/ViewModel/list_model.h
        Platfrom/Utils/NANO/mvvm_controller.cpp
)

target_link_libraries(Embedded_UI_simulator PRIVATE
        mingw32
        SDL2main
        SDL2
)